package org.gongliang.jsmile.authc.sys.dao;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.gongliang.jsmile.authc.sys.entity.SysRole;
import org.gongliang.jsmile.authc.sys.entity.SysRoleResources;
import org.gongliang.jsmile.authc.sys.entity.SysUserRole;
import org.gongliang.jsmile.common.annotation.MybatisDao;
import org.gongliang.jsmile.common.base.BaseDao;

/**
* 
* @author 龚亮
* @version 1.0
* @date 2018年08月25日 04:57:24
*/
@MybatisDao
public interface SysRoleDao extends BaseDao<SysRole> {

	/**
	 * 获取用户所拥有的角色
	 * 
	 * @param userId
	 *            用户id
	 * @return 角色列表
	 */
	List<SysRole> getRoleByUser(Integer userId);
	
	@Delete("delete from t_op_sys_user_role where user_id=#{userId}")
	int deleteUserRole(@Param("userId") Integer userId);
	
	@Insert("insert into t_op_sys_user_role(user_id,role_id) values (#{userId},#{roleId})")
	int saveUserRole(SysUserRole ur);
	
	@Delete("delete from t_op_sys_role_resources where role_id=#{roleId}")
	int deleteRoleResource(@Param("roleId") Integer roleId);
	
	@Insert("insert into t_op_sys_role_resources(role_id,resources_id) values (#{roleId},#{resourcesId})")
	int saveRoleResources(SysRoleResources rr);
	

}
